package builder.builder;


import builder.vacation.Vocation;

/**
 * @description: AbstractBuilder 生成器的抽象类  在构造对象时传入复杂对象Vocation
　* @author 周杨
　* @date 2019/6/27  19:40 
**/
public abstract class AbstractBuilder {
    Vocation vocation;
    AbstractBuilder(String std){
        vocation = new Vocation(std);
    }

    /**
     * 构建假期
     */
    public abstract void buildVacation();
    public abstract void buildDay(int i);

    /**
     * 添加酒店
     * @param hotel 酒店
     */
    public abstract void addHotel(String hotel);

    /**
     * 添加票
     * @param ticket 票
     */
    public abstract void addTicket(String ticket);

    /**
     * 添加事件
     * @param event 事件
     */
    public abstract void addEvent(String event);
    public Vocation getVocation(){
        return vocation;
    }
}
